package com.freda.oa.flow.support.Itf;

import javax.servlet.http.HttpServletRequest;

import com.freda.oa.flow.run.vo.FlowRunInfoVo;

public interface FlowRunSupport {
	/**
	 * 启动流程
	 * @param runInfo
	 * @param request
	 * @return
	 */
	public abstract int startFlow(HttpServletRequest request);
	/**
	 * 下一步
	 * @param runInfo
	 * @param request
	 * @return
	 */
	public abstract int next( HttpServletRequest request);
	/**
	 * 打开
	 * @param runInfo
	 * @param request
	 * @return
	 */
	public abstract FlowRunInfoVo open(HttpServletRequest request);
	/**
	 * 锁定处理人
	 * @param runInfo
	 * @return
	 */
	public abstract int lockAssignee();
	/**
	 * 解锁处理人
	 * @param runInfo
	 * @return
	 */
	public abstract int unLockAssignee();
	/**
	 * 获得流程信息
	 * @param runInfo
	 * @return
	 */
	public abstract FlowRunInfoVo getFlowInfo(String type);

}